<?php
/**
 * Generic Module Class file 
 *
 * @package Apricot
 */

/**
 * @see Apricot_Module_Abstract
 */
require_once 'Apricot/Module/Abstract.php';

/**
 * Generic Module Class
 *
 * This class is used to reduce errors in case modules are called that don't 
 * exist
 * 
 * @uses Apricot_Kernel_Abstract
 * @package Apricot
 * @author Jansen Price <jansen.price@gmail.com>
 * @license http://www.opensource.org/licenses/mit-license.php MIT
 * @version ApricotVersion: 1.1
 */
class Apricot_Module_Generic extends Apricot_Module_Abstract
{
    /**
     * Register this module
     * 
     * @return void
     */
    public function register()
    {
    }

    /**
     * Direct call method
     * 
     * @param mixed $args Arguments
     * @return mixed
     */
    public function direct($args = null)
    {
        return $args;
    }

    /**
     * Magic call method to trap generic calls
     * 
     * @param string $method Method name
     * @param mixed $args Arguments
     * @return mixed
     */
    public function __call($method, $args)
    {
        return $args[0];
    }
}
